package com.study.final_const;

public class Test {
    //使用常量代码可读性更好，可维护性也更好
    //程序编译后常量会被“宏替换”，出现常量的地方全部替换成其记住的字面量，可以保证常量和字面量使用时性能一样
    public static final String SCHOOL_NAME = "广东工业大学";
    public static final String SCHOOL_NAME_2;
    //或者在静态代码块中赋值
    static{
        SCHOOL_NAME_2="华南理工大学";
    }
    public static void main(String[] args) {
        //final修饰类：类不能被继承
        //final修饰方法：方法不能被重写
        //final修饰变量：该变量只能被赋值一次
        //static final修饰的成员变量今后叫做常量，只有一个且不可变
        //常量的单词建议全部大写，用下划线连接单词
//        public static final String SCHOOL_NAME = "广东工业大学"; 报错


        //final修饰基本类型变量，变量存储的数据不能改变
        //final修饰引用类型的变量，变量存储的地址不能改变，但地址所指向的内容是可以改变的
        final int[] arr = new int[5];
        arr[0]=1;
        arr[2]=3;
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
    }
}
